package com.aiti.lulian.service.impl;

import com.aiti.base.core.base.service.iml.BaseSerivceImpl;
import com.aiti.base.core.utils.message.Message;
import com.aiti.lulian.entity.CardClusterRichText;
import com.aiti.lulian.mapper.CardClusterRichTextMapper;
import com.aiti.lulian.service.CardClusterRichTextService;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public class CardClusterRichTextServiceImpl extends BaseSerivceImpl<CardClusterRichTextMapper, CardClusterRichText> implements CardClusterRichTextService {

    @Autowired
    private CardClusterRichTextMapper cardClusterRichTextMapper;
    @Override
    public List<CardClusterRichText> getCardClusterRichTextByClusterId(String clusterId) {
        LambdaQueryWrapper<CardClusterRichText> queryWrapper = new LambdaQueryWrapper<>();
        queryWrapper.eq(CardClusterRichText::getClusterId,clusterId);
        List<CardClusterRichText> cardClusterRichTexts = cardClusterRichTextMapper.selectList(queryWrapper);
        return cardClusterRichTexts;
    }

    @Override
    public Message addCardClusterRichTextByClusterId(List<CardClusterRichText> cardClusterRichTexts) {
        boolean saveResult = this.saveBatch(cardClusterRichTexts);
        if (saveResult) {
            return Message.success("添加成功");
        } else {
            return Message.fail("添加失败");
        }
    }

    @Override
    public Message updateCardClusterRichTextByClusterId(List<CardClusterRichText> cardClusterRichTexts) {
        String clusterId = cardClusterRichTexts.get(0).getClusterId();
        //先根据集群id批量删除原有数据
        LambdaQueryWrapper<CardClusterRichText> queryWrapper = new LambdaQueryWrapper<>();
        queryWrapper.eq(CardClusterRichText::getClusterId,clusterId);
        cardClusterRichTextMapper.delete(queryWrapper);
        boolean saveResult = this.saveBatch(cardClusterRichTexts);
        if (saveResult) {
            return Message.success("添加成功");
        } else {
            return Message.fail("添加失败");
        }
    }

    @Override
    public Message deleteCardClusterRichTextByClusterId(String baseId) {
        LambdaQueryWrapper<CardClusterRichText> queryWrapper = new LambdaQueryWrapper<>();
        queryWrapper.eq(CardClusterRichText::getBaseId,baseId);
        int delete = cardClusterRichTextMapper.delete(queryWrapper);
        if (delete>0) {
            return Message.success("删除成功");
        } else {
            return Message.fail("删除失败");
        }
    }
}

